草庐IT

TypeScript算法题实战——剑指 Offer篇(1)

全部标签

javascript - 已编译 TypeScript 的输出文件夹

我正在学习一个名为THEHEROEDITOR的教程,它让我在app中创建和编辑TypeScript文件。文件夹。该应用程序使用脚本tsc-w,其中w导致tsc每次TypeScript文件失败时,转换器都会输出一个新的JavaScript文件。这让我困惑了几分钟,因为当我添加一个TypeScript类时,编辑器(VisualStudioCode)在类名下划线并告诉我这是一个重复的声明。我看到了同名的JavaScript文件,但我一删除它,重复的声明和JS文件又回来了。脚本在package.json中声明:"scripts":{"start":"tsc&&concurrently\"npm

javascript - Typescript 接口(interface)中的日期在检查时实际上是字符串

不幸的是,重现此代码的总代码会很长,所以我希望我的问题很明显,我可以轻松提供。如果需要,我会发布更完整的解决方案。首先,我定义了一个接口(interface):exportinterfaceITest{myDate:Date;}然后我创建了一个数组用于测试:exportconstTEST:ITest[]=[{myDate:newDate(1995,8,1)}]我使用Angular2中的一项服务公开这些内容,该服务从angular2-in-memory-web-api访问InMemoryDbService。我调用它并获取数组的代码如下:get():Promise{returnthis.h

javascript - TypeScript 类到 JSON

我有一个类数组,其中的类如下所示:classTag{select:string;search:string;}我想将它转换为JSON,它可能看起来像[{select:"blah",search:"bleh"},{...},{...}].这可能吗?因为在Angular2教程中,您可以使用以下行执行相反的操作:.map((r:Response)=>r.json().dataasHero[]); 最佳答案 您可以使用JSON.stringify()将javascript对象转换为json字符串由于类和类的实例是javascript中的对象

javascript - 如何在 Typescript 中使用 Web Api 'require' 和 'require.ensure'

我正在尝试将TypeScript集成到Webpack中,并且正在寻找一些@types来帮助处理所有Webpack特定的东西。我正在使用declarefunctionrequire(string):any;使用fe.:require('some.scss')但很快就对直接或通过///添加它感到恼火语法,希望有更好的方法来做到这一点。理想的情况是npmi@types/webpack但是那个包似乎只用于我认为完全没用的Webpack配置文件......更具体地说,我正在尝试让这段代码在TypeScript中工作:require.ensure([require('./first')],func

javascript - 在 TypeScript 文件中导入 Vue 组件

我一直在尝试将Vue.js与TypeScript一起使用,我遇到了thisrepo.我在这里遇到了从TypeScript导入Vue单一组件文件时出错的问题。我正在使用VisualStudio代码。请查看下面的错误。main.ts://TheVuebuildversiontoloadwiththe'import'command//(runtime-onlyorstandalone)hasbeensetinwebpack.base.confwithanalias.import*asVuefrom'vue'importAppfrom'./App'/*eslint-disableno-new*

javascript - Angular2/Typescript/ngRx - 类型错误 : Cannot assign to read only property of object

在构造函数中我做了这样的事情selectedDate:Object;//construtorthis.selectedDate={};this.selectedDate['date']=newDate();this.selectedDate['pristine']=newDate();在另一个通过单击按钮调用的函数中,我执行以下操作:this.selectedDate['date']=newDate(this.selectedDate['pristine']);我收到以下错误:TypeError:Cannotassigntoreadonlyproperty'date'ofobject'

javascript - 使用新的运算符——来自 John Resig #36

下面的示例代码是JohnResig的LearningAdvnacedJavaScript中的#36。http://ejohn.org/apps/learn/#36ItiscalledWeneedtomakesurethenewoperatorisalwaysused.六个问题-如果您能提供尽可能详细的信息,我将不胜感激1)functionUser是否真的在这段代码中调用过?我注意到当它说assert(user...)时,user是小写的。如果函数被调用,如何调用?当它断言变量user时它会被调用吗,它附加了一个函数调用,即User("John,"name)2)如果我假设函数User从未

Javascript 数组对象与类似数组的对象——说明

我试图对声明为数组对象的类数组对象进行字符串化,发现JSON.stringify在定义为数组对象时无法正确处理类数组对象。为了更清楚,请参见下文,-->jsFiddlevarsimpleArray=[];//notethatitisdefinedasArrayObjectalert(typeofsimpleArray);//returnsobject->ArrayObjectsimpleArray['test1']='test1';simpleArray['test2']='test2';alert(JSON.stringify(simpleArray));//returns[]它工作

Javascript 树遍历算法

我需要帮助以深度优先的方式遍历树结构。我想不出一个算法来正确地做到这一点。我的输入是这样的:[["A","B","C"],["1","2"],["a","b","c","d"]]输出应采用以下形式:["A/1/a","A/1/b","A/1/c","A/1/d","A/2/a","A/2/b","A/2/c","A/2/d","B/1/a","B/1/b","B/1/c","B/1/d","B/2/a","B/2/b","B/2/c","B/2/d","C/1/a","C/1/b","C/1/c","C/1/d","C/2/a","C/2/b","C/2/c","C/2/d"]

javascript - "[index : string]": IFoo notation in typescript

谁能告诉我这是什么[index:string]:IFoo表示在exportinterfaceIBar{[index:string]:IFoo;}exportinterfaceIFoo{CharacterName:string;DisplayName:string;}我翻阅了TypescriptRevealed一书,没有发现任何有关该符号的内容。它应该是实现IFoo的对象的集合吗?谢谢。 最佳答案 用于显示接口(interface)实例被索引时结果的类型。当IBar类型的元素被字符串索引时,即[someString]结果将是IFoo类